package com.link.base.base.apilog.dao.mybatis.mapper;


import com.link.base.base.apilog.model.ApiLogLine;
import com.link.core.basic.dao.mapper.BasicMapper;

import java.util.List;

/**
 * api日志信息Mapper
 *
 * @author 黄龙建
 * @date 2020/1/8 5:41 下午
 */
public interface ApiLogLineMapper extends BasicMapper<ApiLogLine> {

    /**
     * DESC: 总数 (条形图或者趋势图)（指定时间段，以天为度量单位）
     *
     * @param:
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:02 AM
     */
    List<ApiLogLine> queryNumTopN(ApiLogLine entity) throws Exception;

    /**
     * DESC: 总数 (条形图或者趋势图)（指定时间段，以天为度量单位）
     *
     * @param:
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:02 AM
     */
    List<ApiLogLine> queryTotalNum(ApiLogLine entity) throws Exception;

    /**
     * DESC: 错误  top10 (条形图）（可指定时间段，以月份为单位）
     *
     * @param:
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:02 AM
     */
    List<ApiLogLine> queryFailureTopN(ApiLogLine entity) throws Exception;

    /**
     * DESC:
     *
     * @param: 错误  总数 (条形图或者趋势图) （指定时间段，以天为度量单位）
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:03 AM
     */
    List<ApiLogLine> queryFailureNum(ApiLogLine entity) throws Exception;

    /**
     * DESC: 错误接口，正确接口比例 （饼图）（以月份为单位）
     *
     * @param:
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:03 AM
     */
    ApiLogLine queryRatio(ApiLogLine entity) throws Exception;

    /**
     * DESC: 查询头总数
     *
     * @param:
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:03 AM
     */
    ApiLogLine queryTotalHeadNum(ApiLogLine entity) throws Exception;

    /**
     * DESC: 查询接口成功情况
     *
     * @param:
     * @return:
     * @auther: bowen.xu
     * @date: 2018/10/11 11:03 AM
     */
    public List<ApiLogLine> queryTotalAndSuccess(ApiLogLine entity) throws Exception;

    /**
     * @param
     * @return
     * @throws Exception 报错
     * @auther HuangLJ
     * @date 2018/10/15 3:52 PM
     * @comments 查询指定时间段内，接口报错最多的10个clientId
     */
    public List<ApiLogLine> queryClientFailureTopN(ApiLogLine entity) throws Exception;

    /**
     * 删除历史日志
     *
     * @author huanglongjian
     * @date 2019-09-28 23:16
     */
    public void deleteHistory() throws Exception;


}
